package com.hsjk.szwj.module.train.api;

import com.hsjk.szwj.module.train.api.dto.CheckoutOrderDTO;
import com.hsjk.szwj.module.train.api.dto.UpdateCheckoutOrderDTO;

import java.util.List;

/**
 * @author chenjiawei
 * @desc
 * @Date 2023/09/05 09:41
 **/
public interface ICheckoutOrderApi {
    /**
     * 创建结算单
     *
     * @param dto
     * @return int
     * @author chenjiawei
     * @date 2023/9/5 9:42 上午
     **/
    int createCheckoutOrder(CheckoutOrderDTO dto);

    /**
     * 批量创建结算单
     *
     * @param dtos
     * @return int
     * @author chenjiawei
     * @date 2023/10/24 11:42 AM
     **/
    int batchCreateCheckoutOrder(List<CheckoutOrderDTO> dtos);


    List<CheckoutOrderDTO> getCheckoutOrderListById(Long orderId, String checkoutPath);

    CheckoutOrderDTO getCheckoutOrderByDivisionReceiverId(Long divisionReceiverId,Long orderNo);

    int updateCheckoutOrderStatusById(UpdateCheckoutOrderDTO updateCheckoutOrderDTO);

    Boolean checkIfRepeat(CheckoutOrderDTO checkoutOrderDTO);
}
